/***********************************************************************************************************************
 * ############################################# Application AdewebLite #############################################
 * AdewebLite Android est une application permettant de consulter des emplois du temps fournis par l'université UHP
 * avec ou sans connexion internet (informations gardées en mémoire à chaque synchronisation). Et utilisant la web
 * API ADE pour collecter les données.
 * @author Andrianjafintrimo Victor, Zanette Sébastien
 * 
 * Basée sur l'application du même nom, utilisant le flux RSS (données à traiter), de :
 * @author Schnell Michaël, Zanette Sébastien
 * **********************************************************************************************************************
 */

package ade.analyzer;

/**
 * Classe représentant le flux de données qui contient les informations d'un cours
 *@author  Zanette Sébastien, Andrianjafintrimo Victor
 */
public class FeedLesson extends Feed{
        
      
        private String name;
        private String date;
        private String endHour;
        private String startHour;
        private String creation;
        private String update;
        private String color;
        private String note;
        
        private FeedResources resources;
        //private HashMap<String,String> ressources;
        //private ArrayList<FeedResource> resources;

        /**
         * Constructeur de FeedLesson, appelle le constructeur de Feed
         */
	public FeedLesson() {
		super();
	}

        /**
         * Positionne le champ creation à la valeur donnée en paramètre
         * @param creation chaîne de caractères contenant la date de création du cours
         */
        public void setCreation(String creation) {
            this.creation = creation;
        }

        /**
         * Positionne le champ date à la valeur donnée en paramètre
         * @param date chaîne de caractères contenant la date du cours
         */
        public void setDate(String date) {
            this.date = date;
        }

        /**
         * Positionne le champ endHour à la valeur donnée en paramètre
         * @param endHour  chaîne de caractères contenant l'heure de fin d'un cours
         */
        public void setEndHour(String endHour) {
            this.endHour = endHour;
        }

        /**
         * Positionne le champ name à la valeur donnée en paramètre
         * @param name chaîne de caractères contenant le nom d'un cours
         */
        public void setName(String name) {
            this.name = name;
        }

        /**
         * Positionne le champ startHour à la valeur donnée en paramètre
         * @param startHour chaîne de caractères contenant l'heure de début d'un cours
         */
        public void setStartHour(String startHour) {
            this.startHour = startHour;
        }

        /**
         * Positionne le champ update à la valeur donnée en paramètre
         * @param update chaiîne de caractères contenant la date de mis à jour de l'emploi du temps
         */
        public void setUpdate(String update) {
            this.update = update;
        }

        /**
         * Positionne le champ color à la valeur donnée en paramètre.
         * @param color chaîne de caractères contenant la couleur avec laquelle est affichée le cours
         */
        public void setColor(String color) {
            this.color = color;
        }

        /**
         * Positionne le champ note à la valeur donnée en paramètre.
         * @param note chaîne de caractères contenant la note de cours
         */
        public void setNote(String note) {
            this.note = note;
        }

        
       /**
        * Retourne la valeur du champ creation
        * @return la date de création du cours
        */
        public String getCreation() {
            return creation;
        }

        /**
         * Retourne la valeur du champ date
         * @return la date du cours
         */
        public String getDate() {
            return date;
        }

        /**
         * Retourne la valeur du champ endHour
         * @return l'heure de fin du cours
         */
        public String getEndHour() {
            return endHour;
        }

        /**
         * Retourne la valeur du champ name
         * @return le nom du cours
         */
        public String getName() {
            return name;
        }

        /**
         * Retourne la valeur du champ startHour
         * @return l'heure de début du cours
         */
        public String getStartHour() {
            return startHour;
        }

        /**
         * Retourne la valeur du champ update
         * @return la date de mis à jour du cours
         */
        public String getUpdate() {
            return update;
        }

        /**
         * Retourne la valeur du champ color
         * @return la coleur avec laquelle est affichée le cours
         */
        public String getColor() {
            return color;
        }
        
        /**
         * Retourne la valeur du champ note
         * @return la note du cours
         */
        public String getNote() {
            return note;
        }
           
        /**
         * Posisionne le champ ressources à la valeur donnée en paramètre
         * @param resources {@code  FeedResources} contenant les numéros des ressources qui composent le cours
         */
        public void setResources(FeedResources resources) {
            this.resources = resources;
}
        /**
         * Retourne la valeur du du champ ressource
         * @return {@code FeedResource} contenant les numéros des ressources qui composent le cours 
         */
        public FeedResources getResources() {
            return this.resources;
        }

        /**
         * Retourne une chaîne de caractères contenant les informations de la structure {@code  FeedLesson}
         * @return 
         */
	@Override
	public String toString() {               
		return "Feed :\n[Id=" + this.id +"\nCours=" + this.name +"\nDate=" + this.date +"\nDateDébut=" + this.startHour +"\nDateFin=" + this.endHour + "\ncrééle=" + this.creation + "\nupDate=" + this.update + "\ncolor=" + this.color + "\nnote=" + this.note + "\nRessources=" + this.resources + "]";
	}


}
